package com.bdqn.mapper;

import com.bdqn.entity.Supplier;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 供货商 接口
 */
public interface SupplierMapper {

    /**
     * 查询供货商表的总记录数
     * @return
     */
    public int count();



    /**
     * 查询供货商表的全部数据
     * @return
     */
    public List<Supplier> selectSupplierList();

    /**
     *  ch02 实战5
     *  添加供货商
     * @param supplier
     * @return
     */
    int addSupplier(Supplier supplier);

    /**
     *  ch02 实战5
     * 根据供货商id 修改供货商信息
     * @param supplier
     * @return
     */
    int updateSupplierId(Supplier supplier);

    /**
     *  ch02 实战5
     * 根据供货商id 删除供货商信息
     * @param id
     * @return
     */
    int deleteSupplierId(@Param("id") Integer id);

    /**
     * ch03 实战6 使用if和set标签改造供货商模块的修改功能
     * @param supplier
     * @return
     */
    int updateSupplierSet(Supplier supplier);

    /**
     * ch03 实战7 使用if和 trim 标签升级供货商模块的修改功能
     * @param supplier
     * @return
     */
    int updateSupplierIfAndTrim(Supplier supplier);

    /**
     * ch03 实战8 实现分页查询功能按创建时间降序排序
     * @param pageBegin
     * @param pageSize
     * @return
     */
    List<Supplier> selectSupplierPageBeginLimitList(@Param("pageBegin")Integer pageBegin, @Param("pageSize")Integer pageSize);

}
